home *** CD-ROM | disk | FTP | other *** search
Text File | 1991-08-23 | 761 b | 40 lines | [TEXT/????] |
- SYSTEM cellular_automaton;
- CONST n = 79; (* number of elements *)
- m = 50; (* number of loops *)
- CONFIGURATION list [1..n];
- CONNECTION left: list[i] -> list[i-1] .right;
- right: list[i] -> list[i+1] .left;
-
- SCALAR i : INTEGER;
- VECTOR val,l,r: BOOLEAN;
-
- PROCEDURE out;
- SCALAR a: ARRAY[1..n] OF BOOLEAN;
- j: INTEGER;
- BEGIN
- STORE(val,a);
- FOR j:=1 TO n DO
- IF a[j] THEN Write("X") ELSE Write(" ") END;
- END;
- WriteLn
- END out;
-
- BEGIN
- PARALLEL (* Init *)
- val := FALSE;
- ENDPARALLEL;
- PARALLEL [n DIV 2] (* middle *)
- val := TRUE;
- ENDPARALLEL;
-
- FOR i:= 1 TO m DO
- PARALLEL
- out;
- PROPAGATE.left (val,l);
- PROPAGATE.right(val,r);
- val := l<>r;
- ENDPARALLEL;
- END;
- END cellular_automaton.
-
-